#include "func.h"

int main(int argc, char** argv)
{
	char item;
	FILE *f;
	if(argc != 3)
	{
		printf("Parametros no formato incorreto.\n");
		printf("Saindo do programa.\n");
		exit(1);
	}

	abre_arquivo2(argv[1], "saidaalt.txt");	
	abre_arquivo(argv[1], argv[2]);
	
// 	f = fopen("saidaalt.txt", "r");
// 	GERA_ARQ_COMPACTO(f, "compacto.txt");
// 	
// 	f = fopen("saidaalt.txt", "r");
// 	GERA_ARQ_FIXO(f, "fixo.txt");
// 
// 	system("rm -rf saidaalt.txt");
	while(1)
	{
		printf("\n\n\n");
		printf("1 - Converter arquivo fixo para variavel.\n");
		printf("2 - Imprimir arquivo fixo.\n");
		printf("3 - Imprimir arquivo variavel.\n");
		printf("4 - Busca por chave primaria.\n");
		printf("5 - Extracao de chave primaria.\n");
		printf("6 - Ordenacao do arquivo de indice.\n");
		printf("Q - Saida do programa.\n");
		printf("Escolha a opcao:");
		scanf(" %c", &item);
		
		switch(item)
		{
			case '1':
				f = fopen("saidaalt.txt", "r");
				GERA_ARQ_COMPACTO(f, "compacto.txt");
				fclose(f);
				system("mv compacto.txt ARQUIVO_FORMATO_VARIAVEL.txt");
				break;
				
			case '2':
				f = fopen("saidaalt.txt", "r");
				GERA_ARQ_FIXO(f, "fixo.txt");
				imprimir_arquivo("fixo.txt");
				fclose(f);
				break;
				
			case '3':
				f = fopen("saidaalt.txt", "r");
				GERA_ARQ_COMPACTO(f, "compacto.txt");
				imprimir_arquivo("compacto.txt");
				fclose(f);
				break;
				
			case '4':
				printf("Funcao nao implementada.\n");
				printf("Saindo do programa.\n");
				system("rm -rf saidaalt.txt");
				return 0;
				break;
				
			case '5':
				printf("Funcao nao implementada.\n");
				printf("Saindo do programa.\n");
				system("rm -rf saidaalt.txt");
				return 0;
				break;
				
			case '6':
				printf("Funcao nao implementada.\n");
				printf("Saindo do programa.\n");
				system("rm -rf saidaalt.txt");
				return 0;
				break;
				
			case 'Q':
			case 'q':
				printf("Removendo arquivo auxiliares\n");
				system("rm -rf saidaalt.txt");
				return 0;
			default:
				printf("opcao invalida.\n");
				continue;
		}
	}
	return 0;
}
